[REFACTOR][IR] Unify StructInfo and Type#19853
Conversation
The Relax dependent type refactor needs the helper and analysis surfaces to use the consolidated type vocabulary instead of keeping StructInfo compatibility shims around. This removes the remaining renamed helper wrappers, updates the public analysis and transform entry points to Type names, and tightens final stale-name cleanup in the nested-message and analysis internals.
There was a problem hiding this comment.
Code Review
This pull request refactors the Relax dialect in TVM by replacing the StructInfo concept with a unified, richer dependent Type system across C++ source files, headers, Python bindings, and documentation. The review feedback highlights several critical and medium-severity issues, including potential null pointer dereferences in dependent_type.cc, type_functor.cc, type.h, and distributed/type.cc due to missing definition checks. Additionally, there are compilation risks identified in dependent_type.cc regarding the use of the potentially undefined TVM_FFI_ICHECK_GE macro, which should be replaced with the standard TVM_FFI_ICHECK macro.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
Summary